<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"/>
        <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
        <title>
            授权页
        </title>
        <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
    
        </script>
        <!-- 引入 layui.css -->
    <link href="./css/layui.css" rel="stylesheet" />

    <!-- 引入 layui.js -->
    <script src="./js/layui.js"></script>
    <script src="./js/data.js" ></script>
    <script src="./js/constant.js" ></script>
    <script src="./js/userAuth.js"></script>
    
    <script src="./js/request.js"></script>
    <script src="./js/utils.js"></script>
    
    <script type="text/javascript">    

        var wxCode = null ;
        function getToken(code){
            $.ajax({
                url : REQUEST_TOKEN_URL+"?code="+code,
                type:"json",
                method:"get",
                success:function(res){
                    console.log(res);
                    if(res.code == 200){
                        // 数据持久化
                        saveUserInfoToken(res.token);
                        saveUserInfoJson(res.userInfo);
                        const register = res.register;
                        const returnUrl = getReturnUrl();
                        
                        // register表示此微信用户是否绑定手机号
                        if(register){
                            console.log("headers:",REQUEST_HEADERS())
                            $.ajax({
                                url : REQUEST_URL,
                                data :JSON.stringify({action : "GetCustomerInfo"}),
                                headers: REQUEST_HEADERS(),
                                contentType:"application/json",
                                method:"post",
                                type:"json",
                                success:function(res){
                                    console.log(res);
                                    // 如果绑定了，并且能正确获取到用户信息，表示此token 有效，可直接使用
                                    if(res.code == 200 && res.list[0].Rows.length>0){
                                        location.replace(MINE_PAGE);
                                        toNext()
                                        
                                    }else{
                                        // 如果绑定了，但是未能获取到用户信息，表示此用户无效，需要重新走微信授权渠道
                                        // toWx()
                                        layer.open({
                                            title : "校验用户失败",
                                            content : `错误码:${res.code};${res.message}`,
                                            btn:["重新登录"],
                                            yes:function(){
                                                toWx();
                                            }
                                        })
                                    }
                                },
                                err:function(err){
                                    console.log(err);
                                    layer.open({
                                        title : "异常提示",
                                        content : "获取用户信息失败:"+err,
                                    })
                                }
                            })
                        }else{
                            location.replace(LOGIN_PAGE);
                        }
                    }else{
                        // layer.open({title : "获取用户令牌失败",content : res.message});
                        toWx();

                    }
                }
            })
        }

        function runGoOn(){
            var code = wxCode;
            // alert(code)
            if(code==null){
                // 表示请求并非微信跳转来的，
                toWx();
            }else{
                wxCode = code ;
                // 有code，从服务器端获取用户信息并持久化
                getToken(code);

            }
        }

        $(document).ready(()=>{
            // init();
            const code = getUrlParam("code");
            wxCode = code ;
            $("#code").append(code)
            runGoOn();
            
        })
    </script>
    </head>
    <body>
        正在校验身份...
        <div id="code">

        </div> 
        <!-- <div onclick="runGoOn()">
            继续执行
        </div> -->
    </body>
</html>